package org.jeecg.modules.simulator.model;

import lombok.Data;
import lombok.Getter;
import lombok.Setter;

import java.time.LocalTime;
import java.util.List;
import java.util.Map;

/**
 * @program: gp2
 * @description: 场景参数
 * @author: renzhg
 * @create: 2024-09-06 09:15
 **/

public class SimulatorParam {

//    客流od比例参照日期

    //    站内客流分布比例参照日期
//    @Setter
//    @Getter
//    String referenceTrainPlanDateStr;// 列车时刻表参照日期
//
//    @Setter
//    @Getter
//    String  ODProbabilityReferenceDateStr;//od分配概率参照日期

//    @Setter
//    @Getter
//    String allDayPerSecReferenceDateStr;//全天每秒刷卡进站人数参照日期

    @Getter
    private LocalTime startTime;//模拟开始时间

    public void setStartTimeString(String time) {
        this.startTime = LocalTime.parse(time);
    }

    @Getter
    private LocalTime endTime;//模拟结束时间

    public void setEndTimeString(String time) {
        this.endTime = LocalTime.parse(time);
    }


    @Getter
    LocalTime defaultStartTime;

    public void setDefaultStartTime(String time) {
        this.defaultStartTime = LocalTime.parse(time);
    }

    @Getter
    LocalTime defaultEndTime;

    public void setDefaultEndTime(String time) {
        this.defaultEndTime = LocalTime.parse(time);
    }

    @Getter
    @Setter
    List<String> showLines;
    @Getter
    @Setter
    int dailyPassengerVolume;
    @Getter
    @Setter
    private String allDayStartTime;//正常运营日开始时间

    @Getter
    @Setter
    private String allDayEndTime;//正常运营日结束时间


    /**
     * @description: 每一站每秒下车人数, 逻辑上应该人数越多说明下车越容易，人数越少下车越慢
     * 这个参数应该是分时间段，分站点的
     * @author: renzhg
     * @date: 2024/9/14 10:48
     **/

    @Getter
    @Setter
    Map<String, OffTrainNumRange> offTrainNumRangeMap;




}
